// pages/product/index.js.js
const App = getApp()
Page({

  /**
   * 页面的初始数据
   */
  data: {
    itemList: [
    ],
    
  },

  param:{
    pageNum: 1,
    pageSize: 10,
    date: '',
    matchStatus: ''
  },

  //总页数
totalPage: 1,
//当前页数
curPage: 1,

//购买成功跳转页面
pagecode: '/pages/mine/index',
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad(options) {
    if(options.pagecode){
      //console.log("传递的参数:"+ options.pagecode);
      this.pagecode = options.pagecode;
    }
    this.getProductsList();

  },

  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady() {

  },

  /**
   * 生命周期函数--监听页面显示
   */
  onShow() {

  },

  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide() {

  },

  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload() {

  },

  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh() {

  },

  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom() {

  },

  /**
   * 用户点击右上角分享
   */
  onShareAppMessage() {

  },
  async getProductsList(){
App.showLoading();
    let rsq = await App.$http("/app/order/getProducts",this.param,"GET");
    this.setData({
      itemList: rsq.rows,
      loading: false
    });
    //计算总页数
    if(rsq.total > 0){
      //let total = rsq.total % this.param.pageSize
      this.totalPage = Math.ceil(rsq.total / this.param.pageSize);
    }
    wx.hideLoading();
  },

  async buyProduct(row){
    console.log("开始购买产品:" + row.currentTarget.dataset.id);
    let order = {
      productId: row.currentTarget.dataset.id,
      payType: "weixin",
      from: "routine"
    }
    //创建订单
    let data = await App.$http("/app/order/create",order);
    console.log(data);
    var jsConfig = data.data.result.jsConfig;
    //唤起微信支付
    wx.requestPayment({
      nonceStr: jsConfig.nonceStr,
      package: jsConfig.package,
      paySign: jsConfig.paySign,
      timeStamp: jsConfig.timeStamp,
      signType: jsConfig.signType,
      success: (res) => {
        // 支付成功后的回调函数处理逻辑
        console.log(res.errMsg); // 输出 'requestPayment:ok'
        //跳转原页面
        this.toOriginal();

      },
      fail: function(res) {
        // 支付失败或取消支付后的回调函数处理逻辑
        console.log(res.errMsg); // 输出 'requestPayment:fail cancel' 或其他错误信息
      }
    })
  }, 

  toOriginal() {
    wx.navigateTo({
        url: this.pagecode,
    });
},

})